package com.cty._05_Ability._55_01_TreeDepth;

/**
 * @Auther: cty
 * @Date: 2020/7/22 8:47
 * @Description: 面试题55（一）：二叉树的深度
 * 题目：输入一棵二叉树的根结点，求该树的深度。从根结点到叶结点依次经过的
 * 结点（含根、叶结点）形成树的一条路径，最长路径的长度为树的深度。
 * @version: 1.0
 */
public class TreeDepth {

    public static int treeDepth(BinaryTreeNode treeRoot){
        if(treeRoot == null)
            return 0;

        int nLeft = treeDepth(treeRoot.leftChild);
        int nRight = treeDepth(treeRoot.rightChild);
        return (nLeft>nRight)?(nLeft+1):(nRight+1);
    }  // end treeDepth()

}  // end class

class BinaryTreeNode {
    int value;
    BinaryTreeNode leftChild;
    BinaryTreeNode rightChild;

    public BinaryTreeNode(){}
    public BinaryTreeNode(int value){this.value = value;}
}  // end class
